System maintenance including problem resolution and change implementation mainly relies on human operations. Little error prevention mechanism is available in software packages or computer operating systems (OS) when system administrators are performing manual updates or changes. Due to specific application and client requirements, enforcing controls on server side across all platforms is difficult. Auditing systems are often reactive and do not prevent incidents from happening proactively.
In information technology (IT) services environment, system administrators may perform maintenance on computer systems ranging from fixing failures, updates, changes, provisioning, and decommissioning. Most of those maintenance activities require manual input, for example, from system administrators, either using tools or native commands. While some tasks can be performed via automation tools and through graphical user interfaces, a significant number of tasks still rely on interactive command interfaces due to various reasons.
Manual process can commonly introduce operational errors since modern computer systems are rather complex, e.g., Unix OS has more than 300 commands, and each with multiple options. A mistake in the input parameters or the execution context may cause the entire system to crash and become unavailable.